import java.util.Scanner;

/**
 * 【计算糖果】A,B,C三个人是好朋友,每个人手里都有一些糖果,我们不知道他们每个人手上具体有多少个糖果,但是我们知道以下的信息：
 * A - B, B - C, A + B, B + C. 这四个数值.每个字母代表每个人所拥有的糖果数.
 * 现在需要通过这四个数值计算出每个人手里有多少个糖果,即A,B,C。这里保证最多只有一组整数A,B,C满足所有题设条件。
 */
public class Day_4_1_计算糖果 {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            String str = sc.nextLine();
            String[] result = str.split(" ");
            // parseInt 将字符串解析为带符号的十进制整数
            int y1 = Integer.parseInt(result[0]);
            int y2 = Integer.parseInt(result[1]);
            int y3 = Integer.parseInt(result[2]);
            int y4 = Integer.parseInt(result[3]);
            int A = (y1 + y3) / 2;
            int B = (y2 + y4) / 2;
            int C = (y4 - y2) / 2;
            if((A - B) == y1 && (B - C) == y2 && (A + B) == y3 && (B + C) == y4){
                System.out.println(A + " " + B + " " + C);
            }else{
                System.out.println("No");
            }
        }
    }
}
